Inferring ambient atmospheric temperature

ABSTRACT

In a method of inferring ambient atmospheric temperature, an acoustic signal is emitted from a speaker. A first sample of the acoustic signal is captured with a first microphone spaced a first distance from the speaker. A second sample of the acoustic signal is captured with a second microphone spaced a second distance from the speaker. The second distance is greater than the first distance, and a difference between the first distance and the second distance is a known third distance. A time delay in the acoustic signal is determined between the first sample and the second sample. An ambient temperature of the atmosphere through which the acoustic signal traveled is inferred based on a relationship between the time delay and temperature for the acoustic signal over the third distance.

CROSS-REFERENCE TO RELATED APPLICATION—CONTINUATION

This application is a continuation of and claims priority to and benefitof co-pending U.S. patent application Ser. No. 15/650,812 filed on Jul.14, 2017 entitled “INFERRING AMBIENT ATMOSPHERIC TEMPERATURE” by WilliamKerry Keal, having Attorney Docket No. IVS-673, and assigned to theassignee of the present application, the disclosure of which is herebyincorporated herein by reference in its entirety.

Application Ser. No. 15/650,812 claims priority to and benefit of thethen co-pending U.S. Provisional Patent Application No. 62/476,924 filedon Mar. 27, 2017 entitled “Solving Velocity Using Microphones,” byWilliam Kerry Keal, having Attorney Docket Number IVS-724.PRO, andassigned to the assignee of the present application, the disclosure ofwhich is hereby incorporated herein by reference in its entirety.

BACKGROUND

Advances in technology have enabled the introduction of electronicdevices that feature an ever increasing set of capabilities.Smartphones, for example, now offer sophisticated computing and sensingresources together with expanded communication capability, digitalimaging capability, and user experience capability. Likewise, tablets,wearables, media players, Internet connected devices (which may or maynot be mobile), and other similar electronic devices have shared in thisprogress and often offer some or all of these capabilities. Many of thecapabilities of electronic devices, and in particular mobile electronicdevices, are enabled by sensors (e.g., accelerometers, gyroscopes,pressure sensors, thermometers, acoustic sensors, etc.) that areincluded in the electronic device. That is, one or more aspects of thecapabilities offered by electronic devices will rely upon informationprovided by one or more of the sensors of the electronic device in orderto provide or enhance the capability. In general, sensors detect ormeasure physical or environmental properties of the device or itssurroundings, such as one or more of the orientation, velocity, andacceleration of the device, and/or one or more of the temperature,acoustic environment, atmospheric pressure, etc. of the device and/orits surroundings, among others.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthe Description of Embodiments, illustrate various embodiments of thesubject matter and, together with the Description of Embodiments, serveto explain principles of the subject matter discussed below. Unlessspecifically noted, the drawings referred to in this Brief Descriptionof Drawings should be understood as not being drawn to scale. Herein,like items are labeled with like item numbers.

FIG. 1A shows a block diagram of an example electronic device, inaccordance with various aspects of the present disclosure.

FIG. 1B shows a block diagram of an example electronic device comprisinga sensor processing unit (SPU) unit, in accordance with various aspectsof the present disclosure.

FIG. 2 illustrates an example electronic device which includes at leastone speaker and at least two microphones, in accordance with variousaspects of the present disclosure.

FIG. 3 illustrates an example graph of phase shift versus temperaturefor a 20 kHz acoustic signal measured by a pair of microphones disposeddifferent distances from an emission source of the acoustic signal,according to various embodiments.

FIG. 4 illustrates an example graph of the arc tangent of phasedifference versus temperature for a 20 kHz acoustic signal measured by apair of microphones disposed different distances from an emission sourceof the acoustic signal, according to various embodiments.

FIG. 5 illustrates an example graph of time-of-flight difference versustemperature for a 20 kHz acoustic signal measured by a pair ofmicrophones disposed different distances from an emission source of theacoustic signal, according to various embodiments.

FIG. 6 illustrates an example graph of phase shift converted fromtime-of-flight difference versus temperature for a 20 kHz acousticsignal measured by a pair of microphones disposed different distancesfrom an emission source of the acoustic signal, according to variousembodiments.

FIG. 7 illustrates a flow diagram of an example method of inferringambient atmospheric temperature, in accordance with various aspects ofthe present disclosure.

DESCRIPTION OF EMBODIMENTS

Reference will now be made in detail to various embodiments of thesubject matter, examples of which are illustrated in the accompanyingdrawings. While various embodiments are discussed herein, it will beunderstood that they are not intended to limit to these embodiments. Onthe contrary, the presented embodiments are intended to coveralternatives, modifications and equivalents, which may be includedwithin the spirit and scope the various embodiments as defined by theappended claims. Furthermore, in this Description of Embodiments,numerous specific details are set forth in order to provide a thoroughunderstanding of embodiments of the present subject matter. However,embodiments may be practiced without these specific details. In otherinstances, well known methods, procedures, components, and circuits havenot been described in detail as not to unnecessarily obscure aspects ofthe described embodiments.

Overview of Discussion

The speed of sound depends on the ambient temperature of the air thoughwhich the sound waves travel, and thus by determining the speed of soundthe ambient atmospheric temperature may be determined. Herein,“atmospheric” generally refers to an atmosphere of breathable air, butthe techniques discussed herein may be implemented in other gaseousatmospheres. Conventionally, a single speaker and a single microphonemay be used to determine ambient atmospheric temperature. The singlespeaker/single microphone temperature measuring procedure involvesmeasuring the time-of-flight between the loudspeaker and the microphone.However, this single microphone/single speaker technique can presentdifficult timing requirements to estimate time-of-flight between themicrophone and loudspeaker as the transmit time and receipt time have tobe well coordinated and calibrated. The techniques described hereininstead measure flight difference between an emitted acoustic signalreaching two or more microphones each spaced a different distance froman emission point of the acoustic signal. By comparing the difference inthe signal at each of the two or more microphones, the need to know thestart of transit time from the emission source (e.g., a loudspeaker) iseliminated as is the need to tightly correlate the timing of theemission and receipt of the acoustic signal. This also removes the needto determine the time-of-flight between the loudspeaker and eithermicrophone and the need for accurate timing on the operation of theloudspeaker that emits the acoustic signal.

Embodiments described herein provide new capabilities and functionalityand increase the usability of electronic devices. Ambient temperature isthe temperature in the surrounding environment. For example, usingcomponents and techniques described herein, an electronic device canemit (e.g., with a speaker) one or more acoustic signals, receive theacoustic signal(s) with two or more microphones each spaced a differentdistance from the source of emission and use a difference in thereceived signals such as a phase difference or time-of-flight differenceto infer the ambient temperature of the environment immediatelysurrounding the electronic device through which the acoustic signaltravelled between emission and receipt. By performing calculations wherethe frequency of each of the one or more acoustic signals is known andthe distances between each microphone and the speaker (and thus thedelta between any two microphones) are known, the temperature can beinferred from based on, for example, how much longer it takes a signalto reach a second microphone after it reached a first microphone. Thesecalculations can be performed on-the-fly for each difference measurementand/or temperatures associated with different time-of-flight differencesfor one or more pairs of microphones and/or can be pre-calculated andstored in memory, such as in a lookup table.

Discussion begins with a description of notation and nomenclature.Discussion continues with description of an example electronic device,which may be a mobile electronic device. An embodiment, of theelectronic device which includes a sensor processing unit having asensor processor, memory, at least one speaker and at least twomicrophones is then described. An example electronic device being usedto acoustically infer ambient atmospheric temperature is thenillustrated and described. Several graphs are then described toillustrate the relationship between an acoustic signal and separatedmicrophones at a particular frequency of an acoustic signal. Finally,operation of the electronic device and components thereof are thenfurther described in conjunction with description of an example methodof inferring ambient atmospheric temperature.

Notation and Nomenclature

Some portions of the detailed descriptions which follow are presented interms of procedures, logic blocks, processing and other symbolicrepresentations of operations on data bits within a computer memory.These descriptions and representations are the means used by thoseskilled in the data processing arts to most effectively convey thesubstance of their work to others skilled in the art. In the presentapplication, a procedure, logic block, process, or the like, isconceived to be one or more self-consistent procedures or instructionsleading to a desired result. The procedures are those requiring physicalmanipulations of physical quantities. Usually, although not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated in an electronic device/component.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the description ofembodiments, discussions utilizing terms such as “emitting,”“capturing,” “determining,” “inferring,” “achieving,” “filtering,”“accessing,” “accomplishing,” “providing,” “operating,” “storing,” orthe like, refer to the actions and processes of an electronic device orcomponent such as: a sensor processing unit (SPU), a processor of asensor processing unit, a host processor of an electronic device, amemory/buffer, or the like, or a combination thereof. The electronicdevice/component manipulates and transforms data represented as physical(electronic and/or magnetic) quantities within the registers andmemories into other data similarly represented as physical quantitieswithin memories or registers or other such information storage,transmission, processing, or display components.

Embodiments described herein may be discussed in the general context ofprocessor-executable instructions residing on some form ofnon-transitory processor-readable medium, such as program modules orlogic, executed by one or more computers, processors, or other devices.Generally, program modules include routines, programs, objects,components, data structures, etc., that perform particular tasks orimplement particular abstract data types. The functionality of theprogram modules may be combined or distributed as desired in variousembodiments.

In the figures, a single block may be described as performing a functionor functions; however, in actual practice, the function or functionsperformed by that block may be performed in a single component or acrossmultiple components, and/or may be performed using hardware, usingsoftware, or using a combination of hardware and software. To clearlyillustrate this interchangeability of hardware and software, variousillustrative components, blocks, modules, circuits, and steps have beendescribed generally in terms of their functionality. Whether suchfunctionality is implemented as hardware or software depends upon theparticular application and design constraints imposed on the overallsystem. Skilled artisans may implement the described functionality invarying ways for each particular application, but such implementationdecisions should not be interpreted as causing a departure from thescope of the present disclosure. Also, the example electronic device(s)described herein may include components other than those shown,including well-known components.

The techniques described herein may be implemented in hardware, or acombination of hardware with firmware and/or software, unlessspecifically described as being implemented in a specific manner. Anyfeatures described as modules or components may also be implementedtogether in an integrated logic device or separately as discrete butinteroperable logic devices. If implemented in software, the techniquesmay be realized at least in part by a non-transitory processor-readablestorage medium comprising instructions that, when executed, cause aprocessor and/or other components to perform one or more of the methodsdescribed herein. The non-transitory processor-readable data storagemedium may form part of a computer program product, which may includepackaging materials.

The non-transitory processor-readable storage medium may comprise randomaccess memory (RAM) such as synchronous dynamic random access memory(SDRAM), read only memory (ROM), non-volatile random access memory(NVRAM), electrically erasable programmable read-only memory (EEPROM),FLASH memory, other known storage media, and the like. The techniquesadditionally, or alternatively, may be realized at least in part by aprocessor-readable communication medium that carries or communicatescode in the form of instructions or data structures and that can beaccessed, read, and/or executed by a computer or other processor.

The various illustrative logical blocks, modules, circuits andinstructions described in connection with the embodiments disclosedherein may be executed by one or more processors, such as one or moresensor processing unit (SPU), host processor(s) or core(s) thereof,digital signal processors (DSPs), general purpose microprocessors,application specific integrated circuits (ASICs), application specificinstruction set processors (ASIPs), field programmable gate arrays(FPGAs), or other equivalent integrated or discrete logic circuitry. Theterm “processor,” as used herein may refer to any of the foregoingstructures or any other structure suitable for implementation of thetechniques described herein. In addition, in some aspects, thefunctionality described herein may be provided within dedicated softwaremodules or hardware modules configured as described herein. Also, thetechniques could be fully implemented in one or more circuits or logicelements. A general purpose processor may be a microprocessor, but inthe alternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a SPU and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a core of a SPU, or any othersuch configuration.

In various example embodiments discussed herein, a chip is defined toinclude at least one substrate typically formed from a semiconductormaterial. A single chip may for example be formed from multiplesubstrates, where the substrates are mechanically bonded to preserve thefunctionality. Multiple chip (or multi-chip) includes at least twosubstrates, wherein the two substrates are electrically connected, butdo not require mechanical bonding.

A package provides electrical connection between the bond pads on thechip (or for example a multi-chip module) to a metal lead that can besoldered to a printed circuit board (or PCB). A package typicallycomprises a substrate and a cover. An Integrated Circuit (IC) substratemay refer to a silicon substrate with electrical circuits, typicallyCMOS circuits. A MEMS substrate provides mechanical support for the MEMSstructure(s). The MEMS structural layer is attached to the MEMSsubstrate. The MEMS substrate is also referred to as handle substrate orhandle wafer. In some embodiments, the handle substrate serves as a capto the MEMS structure.

In the described embodiments, an electronic device incorporating asensor may, for example, employ a sensor processing unit (SPU) thatincludes at least one sensor in addition to electronic circuits. The atleast one sensor may comprise any of a variety of sensors, such as forexample a gyroscope, a magnetometer, an accelerometer, a microphone, apressure sensor, a proximity sensor, a moisture sensor, a temperaturesensor, a biometric sensor, or an ambient light sensor, among othersknown in the art. The SPU may include at least one acoustic emitter(e.g., a speaker) in addition to the at least one sensor. The SPU mayinclude more than one of a single type of sensor, such as including two,three, four, or some other number of microphones. In some embodiments,all of the SPU may be embodied in a single integral package while inother embodiments some components may distributed across more than onepackage.

In some embodiments, the SPU may comprise one or more motion sensors.For example, an embodiment with an accelerometer, a gyroscope, and amagnetometer or other compass technology, which each provide ameasurement along three axes that are orthogonal relative to each other,may be referred to as a 9-axis device. Other embodiments may, forexample, comprise an accelerometer, gyroscope, compass, and pressuresensor, and may be referred to as a 10-axis device. Along with one ormore motion sensors, some embodiments of the SPU may include two or moremicrophones in an SPU which is either distributed across severalpackages or consolidated into a single package. Other embodiments maynot include all the sensors or may provide measurements along one ormore axes.

The sensors may, for example, be formed on a first substrate. Variousembodiments may, for example, include solid-state sensors and/or anyother type of sensors. The electronic circuits in the SPU may, forexample, receive measurement outputs from the one or more sensors. Invarious embodiments, the electronic circuits process the sensor data.The electronic circuits may, for example, be implemented on a secondsilicon substrate. In some embodiments, the first substrate may bevertically stacked, attached and electrically connected to the secondsubstrate in a single semiconductor chip, while in other embodiments,the first substrate may be disposed laterally and electrically connectedto the second substrate in a single semiconductor package, such as asingle integrated circuit.

In an example embodiment, the first substrate is attached to the secondsubstrate through wafer bonding, as described in commonly owned U.S.Pat. No. 7,104,129, to simultaneously provide electrical connections andhermetically seal the MEMS devices. This fabrication techniqueadvantageously enables technology that allows for the design andmanufacture of high performance, multi-axis, inertial sensors in a verysmall and economical package. Integration at the wafer-level minimizesparasitic capacitances, allowing for improved signal-to-noise relativeto a discrete solution. Such integration at the wafer-level also enablesthe incorporation of a rich feature set which minimizes the need forexternal amplification.

Example Electronic Device

Turning to the figures, FIG. 1A shows a block diagram of an exampleelectronic device 100A, in accordance with various aspects of thepresent disclosure.

As will be appreciated, electronic device 100A may be implemented as amobile electronic device or apparatus. By mobile, what is meant is thatthe electronic device is a handheld and/or wearable device (e.g., awatch, a headband, a pendant, an armband, a belt-mounted device,eyeglasses, a fitness device, a health monitoring device, etc.) that canbe held in the hand of a user and/or worn on the person For example,such a mobile electronic device 100A may without limitation be: a mobilephone (e.g., a cellular phone, a phone running on a local network, orany other telephone handset), wired telephone (e.g., a phone attached bya wire and/or optical tether), personal digital assistant (PDA),pedometer, personal activity and/or health monitoring device, video gameplayer, video game controller, navigation device, mobile internet device(MID), personal navigation device (PND), digital still camera, digitalvideo camera, a tablet computer, a head mounted display (HMD), a virtualreality of augmented reality display, a notebook computer, binoculars,telephoto lens, portable music, video, or media player, remote control,or other handheld device, a wristwatch, a mobile internet of things(JOT) device, or a combination of one or more of these devices.

In some embodiments, electronic device 100A may be a self-containeddevice that comprises its own display and/or other output devices inaddition to input devices as described below. However, in otherembodiments, electronic device 100A may function in conjunction withanother portable device or a non-portable device such as a desktopcomputer, electronic tabletop device, server computer, etc., which cancommunicate with electronic device 100A, e.g., via network connections.Electronic device 100A may, for example, be capable of communicating viaa wired connection using any type of wire-based communication protocol(e.g., serial transmissions, parallel transmissions, packet-based datacommunications), wireless connection (e.g., electromagnetic radiation,infrared radiation or other wireless technology), or a combination ofone or more wired connections and one or more wireless connections.

As shown, example electronic device 100A comprises a communicationsinterface 105, an application (or host) processor 110, application (orhost) memory 111, at least one speaker 116, and at least two microphones117 (e.g., microphone 117-1 and microphone 117-2). With respect to FIG.1A all of the illustrated components (when included) are part of thehost system. In FIG. 1A, components showed in broken line (i.e., dashedboxes) may not be included in some embodiments. Accordingly, in someembodiments, electronic device 100A may additionally include one or somecombination of: interface 112, transceiver 113, display 114, temperaturesensor 115. As depicted in FIG. 1, included components arecommunicatively coupled with one another, such as, via communicationsinterface 105.

The application processor 110 (also referred to herein as “hostprocessor” 110) may, for example, be configured to perform the variouscomputations and operations involved with the general function ofelectronic device 100A (e.g., running applications, performing operatingsystem functions, performing power management functionality, controllinguser interface functionality for electronic device 100A, etc.).Application processor 110 can be one or more microprocessors, centralprocessing units (CPUs), DSPs, general purpose microprocessors, ASICs,ASIPs, FPGAs or other processors which run software programs orapplications, which may be stored in application memory 111, associatedwith the functions and capabilities of electronic device 100A. In someembodiments, processor 110 operates to perform calculations whichcorrelate time delays and/or phase-shifts between receipt of acousticsignals at various microphone pairs (e.g., 117-1 and 117-2; and/or orother pair(s)) with ambient temperature values.

Communications interface 105 may be any suitable bus or interface, suchas a peripheral component interconnect express (PCIe) bus, a universalserial bus (USB), a universal asynchronous receiver/transmitter (UART)serial bus, a suitable advanced microcontroller bus architecture (AMBA)interface, an Inter-Integrated Circuit (I2C) bus, a serial digital inputoutput (SDIO) bus, or other equivalent.

The application memory 111 (for example, a host memory) may compriseprograms, drivers or other data that utilize information provided by theSPU 120. Details regarding example suitable configurations of theapplication (or host) processor 110 and SPU 120 may be found in commonlyowned U.S. patent application Ser. No. 12/106,921, filed Apr. 21, 2008.Application memory 111 can be any suitable type of memory, including butnot limited to electronic memory (e.g., read only memory (ROM), randomaccess memory (RAM), or other electronic memory), hard disk, opticaldisk, or some combination thereof. Multiple layers of software can bestored in application memory 111 for use with/operation upon applicationprocessor 110. In some embodiments, a portion of application memory 111may be utilized as a buffer for data from one or more of the componentsof electronic device 100A. In some embodiments, application memory 111may store data, for example, in the form of a lookup table 142, thatincludes stored data that correlates time delays, phase-shifts, or othermeasurements between receipt of acoustic signals at various microphonepairs (e.g., 117-1 and 117-2 and/or others) with ambient temperaturevalues which cause the particular time delays.

Interface 112, when included, may be any of a variety of differentdevices providing input and/or output to a user, such as audio speakers,touch screen, real or virtual buttons, joystick, slider, knob, printer,scanner, computer network I/O device, other connected peripherals andthe like.

Transceiver 113, when included, may be one or more of a wired orwireless transceiver which facilitates receipt of data at electronicdevice 100A from an external transmission source and transmission ofdata from electronic device 100A to an external recipient. By way ofexample, and not of limitation, in various embodiments, transceiver 113comprises one or more of: a cellular transceiver, a wireless local areanetwork transceiver (e.g., a transceiver compliant with one or moreInstitute of Electrical and Electronics Engineers (IEEE) 802.11specifications for wireless local area network communication), awireless personal area network transceiver (e.g., a transceivercompliant with one or more IEEE 802.15 specifications for wirelesspersonal area network communication), and a wired a serial transceiver(e.g., a universal serial bus for wired communication).

Display 114, when included, may be a liquid crystal device, (organic)light emitting diode device, or other display device suitable forcreating and visibly depicting graphic images and/or alphanumericcharacters recognizable to a user. Display 114 may be configured tooutput images viewable by the user and may additionally or alternativelyfunction as a viewfinder for camera unit of the electronic device.

Temperature sensor 115, when included, is a non-acoustic means ofmeasuring ambient atmospheric temperature of the environment oftemperature sensor 115. That is, temperature sensor 115 does not utilizesound in the determination of temperature. Temperature sensor 115, maycomprise, without limitation: a solid state electrical temperaturesensor, or an electromechanical temperature sensor. In some embodiments,acoustical inference of ambient atmospheric temperature is onlyperformed when a reading from temperature sensor 115 is within a definedrange. One example of such a defined range is between 0 and 50 degreesCelsius. Other ranges are possible such as, for example, −20 degreesCelsius to 70 degrees Celsius. In some instances, an electronic device100 may rely on acoustic inference of ambient temperature, as describedherein, rather than other methods when other methods providemeasurements that are below a certain threshold temperature (such asbelow 5 degrees Celsius) and/or are above a certain threshold (such as35 degrees Celsius). Other thresholds are possible. Alternatively, insome embodiments, temperature determination may be preferred throughacoustic inference because temperature sensor 115 may give unreliableresults, e.g., due to excess internal heat generation.

A speaker 116, when included, may be any type of speaker which convertsan electrical audio signal into a corresponding emitted acoustic signal(i.e., a sound). In various embodiments, speaker 116 may be capable ofproducing an emitted acoustic signal anywhere in the range between 20 Hzand 50 kHz. Other acoustic ranges are possible and anticipated. In someembodiments, a speaker 116 may only be functional over a portion of thisacoustic range such as between 20 Hz and 25 kHz, between 19 kHz and 50kHz, etc. In some embodiments, speaker 116 may be capable of emittingacoustic signals at higher frequencies above the range of human hearing,such as between 20 kHz and 100 kHz, though the speaker 116 may not befunctional over this entire range. Speaker 116 may be, withoutlimitation: a moving coil speaker, a piezoelectric speaker, or any othersuitable type of speaker. In some embodiments, more than one speaker 116may be included in electronic device 100A, and the speakers may have thesame or different acoustic ranges.

A microphone 117 (including microphones 117-1 and 117-2) may be any typeof microphone which receives an acoustic signal (i.e., a sound) andconverts it to a corresponding electrical audio signal. A microphone 117may comprise, without limitation, a piezoelectric microphone, amicro-electrical mechanical system (MEMS) microphone; an electrostaticmicrophone, or any other suitable type of microphone. A microphone 117(e.g., 117-1, 117-2) operates to receive acoustic signals that areemitted by speaker 116, and is thus operable at least in the range ofthe acoustic signals emitted by speaker 116 for acoustically inferringambient temperature. In some embodiments, two, three, four, or moremicrophones 117 may be included in an electronic device 100A.

FIG. 1B shows a block diagram of an example electronic device 100Bcomprising a sensor processing unit (SPU) 120, in accordance withvarious aspects of the present disclosure. The host portion(communications interface 105 and the components to the left ofcommunications interface 105) of electronic device 100B is the same aselectronic device 100A, except that speaker 116 and microphones 117-1and 117-2 are shown in broken line to indicate that in some embodimentsone or more may not be included in electronic device 100B. Likeelectronic device 100A, in some embodiments, electronic device 100B maybe a “mobile electronic device.” Herein, electronic devices 100A and100B are referred to generically and interchangeably as “electronicdevice 100.” As illustrated in FIG. 1B, application processor 110 may becoupled to SPU 120 through communications interface 105.

In this illustrated embodiment of FIG. 1B, SPU 120 comprises: a sensorprocessor 130; internal memory 140; one or more speakers 160 (e.g., atleast one of speakers 160-1, 160-2 . . . 160-N); and two or moremicrophones 170 (e.g., at least two of microphones 170-1, 170-2 . . .170-N). With respect to SPU 120, components showed in broken line (i.e.,dashed boxes) may not be included in some embodiments. Accordingly, insome embodiments, electronic device 100A may additionally include one orsome combination of: motion sensors 150 (e.g., gyroscope 151,accelerometer 153, and/or other motion sensors such as a magnetometer);temperature sensor 180, and filter(s) 190 (e.g., one or more of filters190-1, 190-2 . . . 190-N). In various embodiments, SPU 120 or a portionthereof, such as sensor processor 130, is communicatively coupled withapplication processor 110, application memory 111, and other componentsof electronic device 100B through communications interface 105 or otherwell-known means. SPU 120 may also comprise a communications interface(not shown) similar to communications interface 105 and used forcommunications among one or more components within SPU 120.

Processor 130 can be one or more microprocessors, CPUs, DSPs, generalpurpose microprocessors, ASICs, ASIPs, FPGAs or other processors thatrun software programs, which may be stored in memory such as internalmemory 140 (or elsewhere), associated with the functions of sensorprocessing unit (SPU) 120. In some embodiments, sensor processor 130operates to control the emission and timing of acoustic signals from oneor more of speakers 116 and 160 and the timing of receipt of acousticsignals by one or more of microphones 117 and 170. Sensor processor 130also operates to control and configure motion sensor(s) 150, temperaturesensor 180, and filters 190 when included. For example, sensor processor130 may set the output data rate and full-scale data rate for gyroscope151 and, or accelerometer 153. Similarly, sensor processor 130 may setthe band pass frequencies for filters 190. In some embodiments, sensorprocessor 130 operates to perform calculations which correlate timedelays and/or phase-shifts between receipt of acoustic signals atvarious microphone pairs (e.g., 170-1 and 170-2; 117-1 and 117-2; 117-1and 170-2, etc.) with ambient temperature values. In some embodiments,one or more of the functions described as being performed by sensorprocessor 130 may be shared with or performed in whole or in part byanother processor of an electronic device 100, such as applicationprocessor 110.

As will be appreciated, the application (or host) processor 110 and/orsensor processor 130 may be one or more microprocessors, centralprocessing units (CPUs), microcontrollers or other processors which runsoftware programs for electronic device 100 and/or for otherapplications related to the functionality of electronic device 100. Forexample, different software application programs such as menu navigationsoftware, games, camera function control, navigation software, and phoneor a wide variety of other software and functional interfaces can beprovided. In some embodiments, multiple different applications can beprovided on a single electronic device 100, and in some of thoseembodiments, multiple applications can run simultaneously on electronicdevice 100. Multiple layers of software can, for example, be provided ona computer readable medium such as electronic memory or other storagemedium such as hard disk, optical disk, flash drive, etc., for use withapplication processor 110 and sensor processor 130. For example, anoperating system layer can be provided for electronic device 100 tocontrol and manage system resources in real time, enable functions ofapplication software and other layers, and interface applicationprograms with other software and functions of electronic device 100. Invarious example embodiments, one or more motion algorithm layers mayprovide one or more of: temperature sensing algorithms which utilizeemitted and received acoustic signals for inferring ambient atmospherictemperature; motion algorithms for lower-level processing of raw sensordata provided from internal or external sensors; and the like. Further,a sensor device driver layer may provide a software interface to thehardware sensors of electronic device 100. Some or all of these layerscan be provided in the application memory 111 for access by theapplication processor 110, in internal memory 140 for access by thesensor processor 130, or in any other suitable architecture (e.g.,including distributed architectures).

Internal memory 140 can be any suitable type of memory, including butnot limited to electronic memory (e.g., read only memory (ROM), randomaccess memory (RAM), or other electronic memory). Internal memory 140may store algorithms, routines, or other instructions for instructingsensor processor 130 on the processing of data output by one or more ofthe motion sensors 150. In some embodiments, internal memory 140 maystore a lookup table 142 that includes stored data that correlates timedelays, phase-shifts, or other measurements between receipt of acousticsignals at various microphone pairs (e.g., pair 170-1 and 170-2, pair117-1 and 117-2; pair 170-1 and 117-1, etc.) with ambient temperaturevalues which cause the particular time delays.

Motion sensors 150, when included, may be implemented as MEMS-basedmotion sensors, including inertial sensors such as a gyroscope oraccelerometer, or an electromagnetic sensor such as a Hall effect orLorentz field magnetometer. In some embodiments, at least a portion ofthe internal sensors 150 may also, for example, be based on sensortechnology other than MEMS technology (e.g., CMOS technology, etc.). Asdesired, one or more of the motion sensors 150 may be configured toprovide raw data output measured along three orthogonal axes or anyequivalent structure. Motion sensor(s) 150 are communicatively coupledwith sensor processor 130 by a communications interface, bus, or otherwell-known communication means. When a mobile version of electronicdevice 100B includes one or more motion sensors 150 and is carriedand/or worn on the person of the user, the motion and/or orientation inspace of the electronic device are sensed by the motion sensor(s) 150when the electronic device is moved in space by the user or themovements of the user.

As discussed herein, various aspects of this disclosure may, forexample, comprise processing various sensor signals indicative of devicemotion and/or orientation. These signals are generally referred to as“motion data” herein. Non-limiting examples of such motion data aresignals that indicate accelerometer, gyroscope, and/or magnetometer datain a coordinate system. The motion data may refer to the processed ornon-processed data from the motion sensor(s). In an exampleimplementation, data from an accelerometer, gyroscope, and/ormagnetometer may be combined in a so-called data fusion process,performed, for example, by sensor processor 130, in order to outputmotion data in the form of a vector indicative of device orientationand/or indicative of a direction of device motion. Such a vector may,for example, initially be expressed in a body (or device) coordinatesystem. Such a vector may be processed by a transformation function thattransforms the orientation vector to a world coordinate system. Themotion and/or orientation data may be represented in any suitablereference frame, and may be represented in any suitable form, such asfor example, but not limited to, quaternions, orientation matrices, orEuler angles.

A speaker 160 (e.g., one or more of speakers 160-1, 160-2 . . . 160-N),when included, may be any type of speaker which converts an electricalaudio signal into a corresponding emitted acoustic signal (i.e., asound). In various embodiments, a speaker 160 may be capable ofproducing an emitted acoustic signal anywhere in the range between 20 Hzand 50 kHz. Other acoustic ranges are possible and anticipated. In someembodiments, a speaker 160 may only be functional over a portion of thisacoustic range such as between 20 Hz and 25 kHz, between 19 kHz and 50kHz, etc. In some embodiments, a speaker 160 may be capable of emittingacoustic signals at higher frequencies above the range of human hearing,such as between 20 kHz and 100 kHz, though the speaker 160 may not befunctional over this entire range. A speaker 160 may be, withoutlimitation: a moving coil speaker, a piezoelectric speaker, or any othersuitable type of speaker. In some embodiments, a speaker 160 may bebased on MEMS technology. In some embodiments, more than one speaker 160may be included, and the speakers may have the same or differentacoustic ranges.

A microphone 170 (including one, two, or more of microphones 170-1,170-2 . . . 170-N) may be any type of microphone which receives anacoustic signal (i.e., a sound) and converts it to a correspondingelectrical audio signal. A microphone 170 may comprise, withoutlimitation, a piezoelectric microphone, a micro-electrical mechanicalsystem (MEMS) microphone; an electrostatic microphone, or any othersuitable type of microphone. A microphone 170 (e.g., 117-1, 117-2 . . .170-N) operates to receive acoustic signals that are emitted by any ofspeakers 116 and/or 160, and is thus operable at least in the range ofthe acoustic signals emitted by speaker 116/160 from which it isreceiving acoustic signals for acoustically inferring ambienttemperature.

Temperature sensor 180, when included, is a non-acoustic means ofmeasuring ambient atmospheric temperature of the environment oftemperature sensor 180. That is, temperature sensor 180 does not utilizesound in the determination of temperature. Temperature sensor 180, maycomprise, without limitation: a solid state electrical temperaturesensor, or an electromechanical temperature sensor. In some embodiments,acoustical inference of ambient atmospheric temperature is onlyperformed when a reading from temperature sensor 180 is within a definedrange. One example of such range is between −20 and 45 degrees Celsius.Other ranges are possible.

Filter(s) 190, when included, comprise one or more band-pass filtersthat are configured to pass a band of frequencies of interest. In theembodiments described herein, the band passed is typically centered uponthe frequency of the acoustic signal that is emitted from a speaker forthe purposes of inferring ambient atmospheric temperature. In someembodiments, a separate filter 190 exists for each microphone employedfor inferring ambient atmospheric temperature. Filters are used in someembodiments, because a microphone 170 may pick up many other signalsbesides the desired one. An example of a bandpass filter includes, butis not limited to, a Butterworth second order filter, with a passbandcutoffs of 10% lower and 10% higher than the frequency of the acousticsignal emitted by a speaker for purposes of inferring ambientatmospheric temperature. Other center frequencies and narrower orbroader band pass ranges are possible.

The discussion of FIGS. 2 through 7 will provide further example detailsof at least the operation of the electronic device 100 and/or SPU 120with respect to using emitted and received acoustic signals to inferambient atmospheric temperature. It should be understood that any or allof the functional modules discussed herein may be implemented in a purehardware implementation and/or by one or more processors operating inaccordance with software instructions. It should also be understood thatany or all software instructions may be stored in a non-transitorycomputer-readable storage medium.

Example of Acoustically Inferring Ambient Atmospheric Temperature

FIG. 2 illustrates an example electronic device 100 which includes atleast one speaker 216 and at least two microphones 217-1 and 217-2, inaccordance with various aspects of the present disclosure. Thedistances, phase-shift, time delay, and/or frequencies illustrated inFIG. 2 are notional and not intended to be to scale for any of thedescribed embodiments.

It should be appreciated that, in various embodiments, speaker 216 canbe any speaker selected from speakers 116, 160-1, 160-2 . . . 160-Nillustrated in FIGS. 1A and 1B, and microphones 217-1 and 217-2 can beany pair of microphones selected from microphones 117-1, 117-2, 170-1,170-2 . . . 170-N illustrated in FIGS. 1A and 1B. For example, in oneembodiment, speaker 160 is utilized as speaker 216 and microphones 170-1and 170-2 are utilized as microphones 217-1 and 217-2 respectively. Inanother embodiment, speaker 116 is utilized as speaker 216 andmicrophones 117-1 and 117-2 are utilized as microphones 217-1 and 217-2respectively. In another embodiment, speaker 116 is utilized as speaker216 and microphones 170-1 and 170-2 are utilized as microphones 217-1and 217-2 respectively. In another embodiment, speaker 160 is utilizedas speaker 216 and microphones 170-1 and 170-2 are utilized asmicrophones 217-1 and 217-2 respectively. The only restrictions arethat: 1) the spatial relationship between the utilized combination ofspeakers and microphones must be something that is predetermined andstored in a memory (e.g., application memory 111 and/or internal memory140) of the electronic device; and 2) the combination must be able totransmit an acoustic signal and receive the acoustic signal (i.e., theymust all operate in the frequency range of the signal that istransmitted). Although FIG. 2 shows speaker 216 and microphone 217-1 and217-2 on the same side of electronic device 100, one or more of speaker216 and microphones 217 may also be on other sides or faces of theelectronic device 100.

As depicted in FIG. 2, there is a first distance between speaker 216 andmicrophone 217-1 and a greater second distance 202 between speaker 216and microphone 217-2. The difference between the first and seconddistances is a known third distance 203. This third distance is eitherstored in memory (e.g., application memory 111 and/or internal memory140) or utilized in calculations that generate data stored in a lookuptable 142 disposed in memory (e.g., in application memory 111 and/orinternal memory 140). In some embodiments, this known third distance isas low as 0.1 centimeters and as great as 25 centimeters, or somewherein the range between. In other embodiments, the range may be smaller,such as at or between 0.1 centimeters and 5 centimeters. In otherembodiments third distance 203, may be larger, such as up to 50centimeters, when the size of electronic device 100 is large enough tosupport such a separation. Although depicted as being in a linearrelationship, speaker 216, microphone 217-1, and microphone 217-2 may bean any relationship and in different planes, so long as distance 202 isgreater than distance 201 and the differential between the distances(distance 203) is known.

Acoustic signal 211 is emitted from speaker 216. Measurement 220represents a measurement of acoustic signal 211 at microphone 217-1, andmeasurement 230 represents a measurement of acoustic signal 211 atmicrophone 217-2. Because of the difference in distance 203, acousticsignal 211 reaches microphone 217-1 and microphone 217-2 at a differentphase. Thus, there is a phase difference between measurement 220 andmeasurement 230. Because the speed of sound depends on the temperatureof the air through which acoustic signal 211 travels, the wavelength ofacoustic signal 211 depends on the temperature. Therefore, the phasedifference depends on the temperature, since distance 203 is constant.

For purposes of example, and not of limitation, in one embodiment signal211 is a sine wave at a frequency of 20 kHz, and distance 203 is 1centimeter. Results for this example are discussed and depicted ingraphs shown in FIGS. 3, 4, 5, and 6.

A simplified equation for the speed of sound as a function oftemperature is shown in Equation 1:

v=331.4+0.6*T  Equation 1

where v is the speed of sound in meters per second and T is Temperaturein Celsius. With two or more microphones (e.g., microphones 217-1 and217-2), the sound wave (e.g., acoustic signal 211) will propagate to thedifferent microphones at different times if they are different distancesfrom the loud speaker (e.g., speaker 216). In short, the sound wave getsto the closer microphone (e.g., microphone 217-1) first. Thus, there isa time shift on the signal from each microphone (217-1, 217-2) withrespect to each other, and the time shift for a constant frequency isequivalent to a phase shift.

To compute the phase, processor 110 or sensor processor 130 can performa Fast Fourier Transform (FFT) on the data of each microphone (e.g.,217-1 and 217-2) and find the phase of the peak. To lessen thecomputation complexity and processing time, as the calculations are onlyconcerned with phase at one frequency, processor 110 or sensor processor130 can take the Discrete Fourier Transform (DFT) at one point a shownin Equation 2:

$\begin{matrix}{F = {\sum\limits_{n = 0}^{N - 1}\; {x_{n} \cdot \; \left( {{\cos \left( \frac{{- 2}{\pi \cdot N \cdot f \cdot n}}{R} \right)} + {i\; \cdot \; {\sin \left( \frac{{- 2}{\pi \cdot N \cdot f \cdot n}}{R} \right)}}} \right)}}} & {{Equation}\mspace{14mu} 2}\end{matrix}$

Where, N is the number of points of the signal x_(n), f is the frequencyof the transmitted signal, and R is the sample rate of the signal.Equation 2 is often written in literature with k being in place of

$\frac{N \cdot f}{R}.$

The substitution was done in Equation 2, in order to find the one pointof the DFT at the frequency of interest.

It should be appreciated that “F” from Equation 2 is a complex number.The angle it represents is the arc tangent of imaginary component andreal component of F as shown below in Equation 3.

θ=atan 2(imag(F),real(F))  Equation 3

FIG. 3 illustrates an example graph 300 of phase shift versustemperature for a 20 kHz acoustic signal measured by a pair ofmicrophones disposed different distances from an emission source of theacoustic signal, according to various embodiments. In the illustratedembodiment, the difference between the different distances is 1centimeter, meaning that one of the two microphones (e.g., 217-2) is onecentimeter further from speaker 216 than the other of the twomicrophones (e.g., microphone 217-1). The graphed data 310 illustratesphase shift in degrees on the y-axis versus temperature in Celsius onthe x-axis. The calculations used to produce graphed data 310 can becomputed on the fly by processor 110 and/or sensor processor 130 and/orcomputed in advance with correlated results stored, such as in lookuptable 142, in application memory 111 and/or internal memory 140.

The complex signal resulting from Equation 2 on the first microphonesignal may be represented by “a+b*i” and the complex signal resultingfrom Equation 2 on the second microphone signal may be represented by“c+d*i.” Then, to avoid computing an arc tangent, the tangent of thephase difference can be computed and this tangent then used to identityfor the difference of two angles, which simplifies into Equation 4,

$\begin{matrix}{\Delta \; = \frac{{a \cdot d} - {b \cdot c}}{{a \cdot c} + {b \cdot d}}} & {{Equation}\mspace{14mu} 4}\end{matrix}$

where Δ is the tangent of the phase difference. Using the sameassumptions in FIG. 1, the arc tangent of the phase difference versustemperature in can be plotted as illustrated in FIG. 4.

FIG. 4 illustrates an example graph 400 of the arc tangent of phasedifference versus temperature for a 20 kHz acoustic signal measured by apair of microphones disposed different distances from an emission sourceof the acoustic signal, according to various embodiments. In theillustrated embodiment, the difference between the different distancesis 1 centimeter, meaning that one of the two microphones (e.g., 217-2)is one centimeter further from speaker 216 than the other of the twomicrophones (e.g., microphone 217-1). Graphed data 410 illustrates thetangent of phase difference on the y-axis versus temperature in Celsiuson the x-axis. The calculations used to produce graphed data 410 can becomputed on the fly by processor 110 and/or sensor processor 130 and/orcomputed in advance with correlated results stored, such as in lookuptable 142, in application memory 111 and/or internal memory 140.

The cosines and sines of Equation 1 can be simplified into a tablelookup or calculated by a recursive manner, as is commonly known. Aftercomputing the phase difference, the temperature can be inferred usingthe expected shape graphed (e.g., graphed data 310, 410) and shown inFIG. 3 and/or FIG. 4, or via the same data correlated and stored in alookup table 142.

The graphed data (e.g., graphed data 310, 410) used to estimate/infertemperature can also be adjusted based upon humidity if humidity ismeasured or otherwise known. Humidity has a small effect on the speed ofsound and hence on the phase difference shown in the plots of FIGS. 3and 4. Pressure and wind speed also have an effect and the curve couldbe adjusted based upon those parameters. Humidity and pressure can bemeasured or else estimated using internet data based on known location.Pressure can also be estimated based upon both internet data andmeasured altitude.

It should be appreciated that the plots illustrated by graphed data 310and 410 assume the microphones (217-1 and 217-2) are sampled at the sametime. If they are not sampled at the same time, then that would shiftthe curve from theoretical, but the principles described above stillapply after factoring in the difference in measurement times.Alternatively, to correct for any difference in sampling time, theprinciples can be applied on two, or more, different known frequencies.Assuming that the difference in sampling time is constant for thedifferent frequencies, and using the relation between frequency andphase, the unknown sampling time can be determined, using e.g.,regression methods.

It should also be appreciated that the methods for inferring ambientatmospheric temperature described and illustrated in FIGS. 3 and 4operate independently of the gain on microphones 217-1 and 217-2.

Although only two microphones were illustrated in the examples of FIGS.2-4, more can be utilized. For example, given 3 microphones A, B, and Ceach a different distance from the loud speaker which emits an acousticsignal, the phase differences between A and B, B and C, and A and C canbe computed. The three results can then be combined via any of variousmethods. One such combination method is averaging the three answers.Another combination method is weighting by the three answers by afunction of the difference in distance between the microphone andloudspeaker.

FIG. 5 illustrates an example graph 500 of time-of-flight differenceversus temperature for a 20 kHz acoustic signal measured by a pair ofmicrophones disposed different distances from an emission source of theacoustic signal, according to various embodiments. In the illustratedembodiment, the difference between the different distances is 1centimeter, meaning that one of the two microphones (e.g., 217-2) is onecentimeter further from speaker 216 than the other of the twomicrophones (e.g., microphone 217-1). The graphed data 510 illustratestime difference on the y-axis versus temperature in Celsius on thex-axis. The calculations used to produce graphed data 510 can becomputed on the fly by processor 110 and/or sensor processor 130 and/orcomputed in advance with correlated results stored, such as in lookuptable 142, in application memory 111 and/or internal memory 140.

Ad depicted in FIG. 5, phase difference between two signals can also becharacterized as a time difference between the two signals. The phasedifference results from a difference in the time-of-flight between aspeaker and a microphone and between the same speaker and a differentmicrophone. By looking at the time-of-flight difference, the system doesnot have to have strict timing between the speaker and the microphones.The time-of-flight difference is the distance difference divided by thevelocity (see Equation 5). An example would be for a sound velocity of346.4 m/s and a microphone difference (e.g., distance 203) of 1 cm,would be a time-of-flight difference of 28.868 us. The 346.4 m/s forsound velocity comes from Equation 1 for 25° C. for temperature. Thetime-of-flight scales linearly with the distance difference, so there isa 28.868 μs time-of-flight difference per centimeter of microphonedistance difference (e.g., distance 203) of microphone to speaker.

$\begin{matrix}{{time}\; = \frac{distance}{velocity}} & {{Equation}\mspace{14mu} 5}\end{matrix}$

While the time difference is small over only 1 cm it is noticeable as aphase shift, also note that the time difference will increase if it ismeasured over larger distance (e.g., if distance 203 is larger than 1cm). The expected phase shift would be the time-of-flight differencetimes the frequency times 360 degrees for units in degrees or a forunits in radians. The result of converting the time-of-flight shown inFIG. 5 to phase shift is shown in FIG. 6.

FIG. 6 illustrates an example graph 600 of phase shift converted fromtime-of-flight difference versus temperature for a 20 kHz acousticsignal measured by a pair of microphones disposed different distancesfrom an emission source of the acoustic signal, according to variousembodiments. In the illustrated embodiment, the difference between thedifferent distances is 1 centimeter, meaning that one of the twomicrophones (e.g., 217-2) is one centimeter further from speaker 216than the other of the two microphones (e.g., microphone 217-1). Thegraphed data 610 illustrates the phase shift in degrees (calculated fromtime-of-flight) on the y-axis versus temperature in Celsius on thex-axis. The calculations used to produce graphed data 610 can becomputed on the fly by processor 110 and/or sensor processor 130 and/orcomputed in advance with correlated results stored, such as in lookuptable 142, in application memory 111 and/or internal memory 140.

As with FIGS. 3 and 4, the graphs illustrated in FIGS. 5 and 6 assumethat microphones 217-1 and 217-2 capture their acoustic signal samplessimultaneously. If this is not the case, then adjustments for the timedifference between the capture of the two samples can be made. Forexample, the difference in the sampling times can be included in thetime of flight difference as shown above in FIG. 5. The difference inthe sampling times can also be adjusted in the phase calculation asshown above for converting the data of FIG. 5 to the data graphed inFIG. 6. For example, the phase would shift by 360 degrees timesfrequency times the sample time difference. In some embodiments,multiple different frequencies can be used, as discussed is relation toFIGS. 3 and 4, to cancel out an unknown difference in sampling time.

Wrapping and Multipath

To get around phase wrapping, a lower frequency (e.g., for acousticsignal 211) can be used and/or multiple frequencies (instead of a singlefrequency acoustic signal 211) can be used. Multiple frequencies can beused either separated in time or at the same time. The acoustic signalcan also be encoded with another signal to help with wrapping and/ormultipath. One method of coding is to change the sign of the amplitudewhich is equivalent to a 180 degree phase shift. For example, a codingsequence such as Gold Code can be placed upon the acoustic signal (e.g.,signal 211) which is used as a carrier frequency. Another type of codingthat can be used, is to zero out the amplitude for predetermined periodsof time. Using coding helps solve multipath, because the signal beingmatched against can be lined up and the shortest distance to a match canbe chosen as the difference. Conversely, without coding, it is much moredifficult to match up the beginning of a sine wave acoustic signal byitself when noise is also embedded on top of the acoustic signal.

Motion and Other Sensors

Because the time-of-flight and phase difference measurements discussedabove are measurements of velocity, it may also be important, in someinstances to know the velocity (if any) of electronic device 100. Thiscan be important because motion of an electronic device 100 may createan artifact, which may be negligible or may be important depending onthe velocity and how accurate the inferred temperature is required tobe. By knowing motion of an electronic device 100 tightly timed with theacoustically based inference of ambient atmospheric temperature,compensation can take place and/or inference of temperature can besuspended if the motion is too great. The motion may be determined usingmotion sensors, such as an accelerometer, or gyroscope, of theelectronic device. The speed of motion may be determined from either oneor both types of motion sensors, and the derived speed may then be used,for example in Equation 1, to correct for the speed of the device in theinference of temperature. Alternatively, if the motion is below a presetthreshold, the motion sensor may send a sync signal or set a flag toindicate that the temperature may be inferred without being disturbed bythe speed of the device. Inertial and motion sensors may also be used todetermine the orientation of the device, and if the device is in anorientation that does not enable temperature determination, e.g., withspeaker and or mics of table surface, the process is not performed. Ifdifferent speakers and microphones are available, for example ondifferent faces of the device, the orientation information may be usedto select to most appropriate speaker and microphones combination. Forexample, if there are more than three microphones two microphones can beselected based on their orientation (e.g., select two that are on a sideof the electronic device that is not facing downward, as facing downwardmay be an indication of the device laying on a table and thus impedingreception of any microphones that face the table). In the same fashion,a speaker may be chosen from a plurality of speakers based on being onthe same side of the electronic device as one or more of the chosenmicrophones and/or based on not being muffled by facing down onto asurface such as a table. Similarly, if based on activity recognition orposition calculations using the motion sensors and/or other sensors, itis determined that the location of the device does not allow thedetermination of the temperature, for example, if the determinationindicates the device is in the user's pocket, the process is notperformed.

If the device is equipped with an internal temperature sensor, the datafrom this temperature sensor may also be used. For example, if thetemperature sensor indicates that the device is very hot, e.g., asmartphone was left in the sun, this would indicate that the temperaturethat could be inferred by the phase shift calculations would probablynot be representative of the temperature of the atmosphere.Alternatively, the temperature inferred through the phase shift may beused to determine the effect of the internal temperature of the deviceon the temperature at the surface of the device. Under stableconditions, the internal temperature sensor may also be used tocalibrate the temperature inferred using the phase shift, and thecorrect for unknown factors, such as e.g., unknown sampling times orunknown sampling delays or processing delays as discussed above. In someinstances, such as when the electronic device 100 is left in hotconditions such as inside of an automobile on a hot sunny day orovernight on a cold evening, the electronic device may heat up or cooldown and cause the internal temperature sensors to provide readings thatare different from an ambient temperature that an electronic device islocated within (e.g., if the electronic device is carried into atemperature controlled building). For example, the device may remain hotor cold for a while even in the ambient temperature around the devicechanges. Inaccurate ambient temperature readings from the internaltemperature sensors may continue until the internal components equalizein temperature to the ambient temperature. When such conditions arenoted, such as when the internal temperature sensor measures below orabove a preset threshold, the electronic device 100 may utilize theacoustic sensors for measurements of ambient temperature when there isdifference between the temperature measured by the internal temperaturesensor and the acoustically inferred temperature.

The various embodiments above show that different sensors may be used toeither test if conditions allow that the temperature is inferred usingthe acoustic methods described herein, or may be used to correct theinferred temperature. Furthermore, when a temperature sensor is present,the temperature reading from the temperature sensor and the inferredtemperature may be combined, or one of the temperatures may be selectedbased on their comparison, and a condition test.

Architecture

In some embodiments, a portion of the computations for inferringtemperature from acoustic signal measurements can be computed outside ofsensor processor 130. For example, while sensor processor 130 operatesmicrophones (inside of sensor processing unit 120, outside of sensorprocessing unit 120, or some combination of inside and outside),Equation 2 can be computed by processing system 120 or on a motion oraudio DSP of sensor processing unit 120 or elsewhere in electronicdevice 100, while Equation 3 or Equation 4 used with FIG. 3 or FIG. 4can be computed on the host processor 110 to get temperature. This keepsthe DSP type math computations on the type of processor that isoptimized for this type of computation and the division computations andtable lookups on the host processor 110 which is better at these typesof tasks.

Example Methods of Operation

FIG. 7 illustrates a flow diagram 700 of an example method of inferringambient atmospheric temperature, in accordance with various aspects ofthe present disclosure. Procedures of this method will be described withreference to elements and/or components of one or more of FIGS. 1A-6. Itis appreciated that in some embodiments, the procedures may be performedin a different order than described, that some of the describedprocedures may not be performed, and/or that one or more additionalprocedures to those described may be performed. Flow diagram 700includes some procedures that, in various embodiments, are carried outby one or more processors (e.g., sensor processor 130, applicationprocessor 110, or the like) under the control of computer-readable andcomputer-executable instructions that are stored on non-transitorycomputer-readable storage media (e.g., application memory 111, internalmemory 140, or the like). It is further appreciated that one or moreprocedures described in flow diagram 700 may be implemented in hardware,or a combination of hardware with firmware and/or software.

With reference to FIG. 7, at procedure 710 of flow diagram 700, invarious embodiments, an acoustic signal is emitted from a speaker of anelectronic device 100. In some embodiments, this comprises a processor110 or sensor processor 130 directing and/or operating the speaker(e.g., speaker 216 of FIG. 2) to emit a signal (e.g., acoustic signal211) of a certain frequency or plurality of frequencies. In someembodiments, the acoustic signal is emitted from the speaker in atpredetermined periodic intervals, such as every minute, every 5 minutes,every 10 minutes, etc. In some embodiments, the acoustic signal isemitted from the speaker in response to a process or component of theelectronic device requesting the ambient atmospheric temperature. Insome embodiments, the acoustic signal is emitted from the speaker inresponse to a to a user of the electronic requesting the ambientatmospheric temperature, such as via interaction with an interface(e.g., interface 112) of the electronic device 100. In some embodiments,a human audible signal (e.g., a signal at 3 kHz, 7 kHz, or some otherhuman audible frequency or combination of frequencies that includes atleast one human audible frequency) may be emitted from the speaker orfrom another speaker contemporaneously with or slightly before or after(e.g., 0.5 seconds before or after) the acoustic signal in order toprovide user feedback in response to the request. This may beaccomplished by emitting a tone, beep, or some other human audible soundwhen the acoustic signal itself is not in the human audible range ofhuman. In some embodiments, the human audible sound may be both theemitted acoustic signal and a feedback signal for a human user of anelectronic device 100. In some embodiments, the acoustic signal may becombined with other audible sounds emitted by the device as directed byother applications. For example, an application may play a sound fore.g., a notification, and the acoustic signal may be combined with thenotification sound, or the notification sound may serve as the acousticsignal (with or without adaptation).

The emitted acoustic signal may be a single frequency signal or a signalcomprising a plurality of frequencies. The emitted acoustic signal maybe of any frequency or frequencies within a range of frequencies, suchas the range of 20 Hz to 21 kHz, the range of 19 kHz to 50 kHz; therange of 20 Hz to 50 kHz, or some other range. In some embodiments, theemitted acoustic signal is purposely either within, above, or below thehuman audible range. In some embodiments, the emitted acoustic signalmay comprise a known pattern of frequencies. In some embodiments, theemitted frequency may comprise a pseudorandom noise code.

With continued reference to FIG. 7, at procedure 720 of flow diagram700, in various embodiments, a first sample of the acoustic signal iscaptured with a first microphone spaced a first distance from thespeaker. In some embodiments, this comprises processor 110 or sensorprocessor 130 directing and/or operating a first microphone (e.g.,microphone 217-1) disposed as a part of an electronic device 100 tocapture a sample of an acoustic signal that has been emitted from aspeaker (e.g., speaker 216). With reference to FIG. 2, distance 201 isan example of the first distance. The sample may be of a predeterminedduration, such a 10 μS, 1 mS, or some other length of time. In someembodiments, the sampling is further achieved by filtering raw sampledacoustic data sampled from the first microphone with a first filter(e.g., filter 190-1) that is configured to pass the acoustic signal. Forexample, the filter may comprise a band-pass filter configured to passthe frequency or frequencies of the acoustic signal. In an example wherethe acoustic signal is a 25 kHz signal, the band-pass filter may have alow frequency cutoff at 23.5 kHz and a high frequency cutoff of 26.6kHz, with frequencies between the cutoffs being passed. Other upper andlower cutoffs are possible, as are other frequencies for the acousticsignal.

With continued reference to FIG. 7, at procedure 730 of flow diagram700, in various embodiments, a second sample of the acoustic signal iscaptured with a second microphone spaced a second distance from thespeaker. The second sample and first sample are captured simultaneously(with the same start time) in some embodiments. The second distance isgreater than the first distance, and a difference between the firstdistance and the second distance is a known and predetermined thirddistance. In some embodiments, this comprises processor 110 or sensorprocessor 130 directing and/or operating a second microphone (e.g.,microphone 217-2) disposed as part of an electronic device 100 tocapture a sample of an acoustic signal that has been emitted from thespeaker (e.g., speaker 216). With reference to FIG. 2, distance 202 isan example of the second distance, and distance 203 is an example of thethird distance (the difference between the first and second distances).The sample may be of a predetermined duration, such a 10 μS, 1 mS, orsome other length of time. In some embodiments, the sampling is furtherachieved by filtering raw second sample of acoustic data sampled fromthe second microphone with a filter. Where the first sample and secondsamples are captured simultaneously the filter comprises a second filter(e.g., filter 190-2) that is configured to pass the acoustic signal. Forexample, the second filter may comprise a band-pass filter configured topass the frequency or frequencies of the acoustic signal. As in theabove example, where the acoustic signal is a 25 kHz signal, thisband-pass filter may have a low frequency cutoff at 23.5 kHz and a highfrequency cutoff of 26.6 kHz, with frequencies between the cutoffs beingpassed. Where the first and second samples are not capturedsimultaneously or in a manner that overlaps in time of capture the firstfilter (e.g., filter 190-1) may be utilized to filter the raw sampledacoustic signals of both the first and second samples.

With continued reference to FIG. 7, at procedure 740 of flow diagram700, in various embodiments, a time delay in the acoustic signal isdetermined between the first sample and the second sample. In someembodiments, this time delay comprises a time-of-flight delay thatoccurs over the span of the third distance (e.g., distance 203).Reference is made to the previous description of this determination ofthe time delay, with particular attention directed to the descriptionsof Equations 1 and 5 and FIG. 5. In some embodiments, this time delaycomprises a phase-shift that occurs over the span of the third distance(e.g., distance 203). Reference is made to the previous description ofthis determination of the phase-shift, with particular attentiondirected to the descriptions of Equations 1, 2, 3, and 4 and FIGS. 3, 4,and 6.

With continued reference to FIG. 7, at procedure 750 of flow diagram700, in various embodiments, an ambient temperature of the atmospherethrough which the acoustic signal traveled is inferred based on arelationship between the time delay and temperature for the acousticsignal over the third distance. As discussed herein, this inference canbe calculated on-the-fly (e.g., in real time) by one or more ofprocessor 110, sensor processor 130, and/or other processor(s) ofelectronic device 100. In other embodiments, some or all of thesecomputations can be performed in advance for a plurality of time delaysassociated with the frequency or frequencies used in emitted acousticsignals (e.g., as acoustic signal 211) and the predeterminedrepresentations of the relationships between the time delays andinferred temperatures for specific third distances can be stored. Forexample, the time-of-flight delay results can be correlated withinferred temperatures (as depicted in FIG. 3) and then representationsof these relationships can be stored in memory (e.g., application memory111 and/or internal memory 140), such as in the form of lookup table142. When lookup table 142 is utilized, a time-of-flight can be searchedin the lookup table and its associated inferred temperature can be foundand returned.

In some embodiments, inferring the ambient temperature of the atmospherethrough which the acoustic signal has traveled may be further based on ahumidity adjusted relationship between the time delay over the thirddistance and temperature for the acoustic signal over the thirddistance. For example, when a relative humidity is known either throughmeasurement of by a sensor of electronic device 100 or via receipt froman outside source (e.g., via an Internet connected source) then thecalculations described herein, can be adjusted for humidity. In otherembodiments, entry criteria for a lookup table (e.g., lookup table 142)of predetermined relationships can further include the time-of-flightand the humidity and then return an associated inferred ambientatmospheric temperature for the time-of-flight and humidity that hasbeen pre-calculated for a particular pair of speakers and a particularfrequency of acoustic signal.

Some embodiments further comprise determining, from data provided by asensor physically coupled with the speaker, a characteristic of thespeaker. By “physically coupled” what is meant is being a component ofthe same SPU 120 as the speaker or being otherwise disposed as acomponent of an electronic device 100 (e.g., a mobile electronic device)of which the speaker is a component. Thus, the sensor is also coupledphysically coupled with SPU 120 and electronic device 100. In responseto the characteristic being within a predetermined envelope, theinferring of the ambient temperature of the atmosphere through whichsaid acoustic signal traveled based on said relationship between saidtime delay and temperature for said acoustic signal over said thirddistance is accomplished. For example, the characteristic may be motiondata provided by a motion sensor physically coupled with the speaker andthe sensor processing unit. The motion data may describe an activity ofthe speaker such as, without limitation: swinging in an arc in the handof a runner/walker, recording impacts of walking or running footsteps,identifying the orientation (face up/down) of a speaker, and/oridentifying a velocity of travel of the speaker. For example, withreference to FIG. 1B, this can comprise motion sensor(s) 150 and speaker160-1 being physically coupled together as portions of sensor processingunit 120. A motion sensor 150, such as gyroscope(s) 151 and/oraccelerometer(s) 153 may provide data to sensor processor 130 which isutilized to calculate a velocity, orientation, activity etc. of sensorprocessing unit 120 and anything that is coupled thereto, such asspeaker 160-1, speaker 116, and all of electronic device 100. In oneembodiment, when the velocity is above a certain predeterminedthreshold, it may introduce artifacts into acoustic sampling and thusdegrade the accuracy of temperature inference below an acceptable levelfor some applications. In some embodiments, responsive to the measuredvelocity being at or below a preset velocity threshold of a velocityenvelope, the inference of the ambient temperature of the atmospherethrough which the acoustic signal traveled is accomplished based on therelationship between the time delay and temperature for the acousticsignal over the third distance. When velocity is above the presetvelocity threshold of a velocity envelope, this inference of ambienttemperature is not accomplished. In some embodiments, motion by a motionsensor can indicate an orientation of a speaker, microphone, and/orelectronic device in which the speaker and microphone. The orientationcan be compared to an acceptable orientation envelope. Responsive to thespeaker, microphone, and/or electronic device being an acceptableorientation (i.e., within the orientation envelope, such as by thespeaker being oriented face up) the inference of the ambient temperatureof the atmosphere through which the acoustic signal traveled isaccomplished based on the relationship between the time delay andtemperature for the acoustic signal over the third distance. When theorientation is outside of the orientation envelope (such as byindicating that a speaker is face down), this inference of ambienttemperature is not accomplished. In some embodiments, motion by a motionsensor can indicate an activity of a speaker, microphone, and/orelectronic device in which the speaker and microphone. For example, theactivity can be swinging in an arc (such as in the hand of a runner), onthe person of a walker (as determined by step motion), or on the personof a runner (as determined by step motion). Responsive to the speaker,microphone, and/or electronic device being within the permitted activity(such as by not swinging in an arc (or else not swinging too fast), notbeing on the person of a walker (or else the walker is not running toofast), not being on the person of a runner (or else the runner is notrunning too fast)) the inference of the ambient temperature of theatmosphere through which the acoustic signal traveled is accomplishedbased on the relationship between the time delay and temperature for theacoustic signal over the third distance. When the activity is determinedto be outside of the activity envelope, this inference of ambienttemperature is not accomplished. Use of such envelopes helps to preventsituations or conditions which may interfere with acoustic inference oftemperature due to excess velocity, orientation which might muffle theacoustic signal, or activity which might cause wind or other acousticinterference in a microphone.

In some embodiments, electronic device 100 and/or sensor processing unit120 may include a temperature sensor (e.g., temperature sensor 115and/or temperature sensor 180). In some embodiments, measurements fromsuch temperature sensor(s) may be utilized to calibrate acousticallyinferred temperatures. In other embodiments, temperature measurementsfrom one or more of these temperature sensors may be combined, such asaveraged, with acoustically inferred temperatures. In some embodiments,acoustical inference of ambient atmospheric temperature is onlyperformed when a reading from a temperature sensor (e.g., 115 and/or180) is within a defined range. One example of such a defined range isbetween −15 and 60 degrees Celsius. Other ranges are anticipated andpossible.

In some embodiments, an acoustically inferred temperature, may be outputfor use by an application or component of electronic device 100. In someembodiments, an acoustically inferred temperature may be stored. In someembodiments, an acoustically determined temperature may be output to auser, such by being displayed on display 114 and/or audibly enunciatedvia speaker 116. Although, inferred temperatures were described hereinas being inferred in degrees Celsius, they may be inferred in orconverted to other scales such as degrees Fahrenheit by one or morecomponents/applications of electronic device 100.

CONCLUSION

The examples set forth herein were presented in order to best explain,to describe particular applications, and to thereby enable those skilledin the art to make and use embodiments of the described examples.However, those skilled in the art will recognize that the foregoingdescription and examples have been presented for the purposes ofillustration and example only. The description as set forth is notintended to be exhaustive or to limit the embodiments to the preciseform disclosed. Rather, the specific features and acts described aboveare disclosed as example forms of implementing the claims.

Reference throughout this document to “one embodiment,” “certainembodiments,” “an embodiment,” “various embodiments,” “someembodiments,” or similar term means that a particular feature,structure, or characteristic described in connection with the embodimentis included in at least one embodiment. Thus, the appearances of suchphrases in various places throughout this specification are notnecessarily all referring to the same embodiment. Furthermore, theparticular features, structures, or characteristics of any embodimentmay be combined in any suitable manner with one or more other features,structures, or characteristics of one or more other embodiments withoutlimitation.

What is claimed is:
 1. A method of inferring ambient atmospherictemperature, said method comprising: capturing a first sample of anacoustic signal emitted from a speaker of a mobile electronic devicewith a first microphone of said mobile electronic device, said firstmicrophone spaced a first distance from said speaker; capturing a secondsample of said acoustic signal with a second microphone of said mobileelectronic device spaced a second distance from said speaker, whereinsaid second distance is greater than said first distance, and wherein adifference between said first distance and said second distance is aknown third distance; determining a time delay in said acoustic signalbetween said first sample and said second sample; and inferring anambient temperature of the atmosphere through which said acoustic signaltraveled based on a relationship between said time delay and temperaturefor said acoustic signal over said third distance.
 2. The method asrecited in claim 1, wherein said inferring an ambient temperature of theatmosphere through which said acoustic signal traveled based on arelationship between said time delay and temperature for said acousticsignal over said third distance comprises: inferring said ambienttemperature based on accessing a stored predetermined representation ofsaid relationship between said time delay and said temperature for saidacoustic signal over said third distance.
 3. The method as recited inclaim 1, wherein said inferring an ambient temperature of the atmospherethrough which said acoustic signal traveled based on a relationshipbetween said time delay and temperature for said acoustic signal oversaid third distance comprises: inferring said ambient temperature of theatmosphere through which said acoustic signal traveled based on ahumidity adjusted relationship between said time delay and temperaturefor said acoustic signal over said third distance.
 4. The method asrecited in claim 1, wherein said inferring an ambient temperature of theatmosphere through which said acoustic signal traveled based on arelationship between said time delay and temperature for said acousticsignal over said third distance comprises: wherein said inferring anambient temperature of the atmosphere through which said acoustic signaltraveled based on a relationship between said time delay and temperaturefor said acoustic signal over said third distance, wherein said timedelay comprises one of a time-of-flight delay and a phase shift.
 5. Themethod as recited in claim 1, wherein said inferring an ambienttemperature of the atmosphere through which said acoustic signaltraveled based on a relationship between said time delay and temperaturefor said acoustic signal over said third distance further comprises:determining, from data provided by a sensor physically coupled with saidspeaker, a characteristic of said speaker; and responsive to saidcharacteristic being within a predetermined envelope, accomplishing saidinferring said ambient temperature of the atmosphere through which saidacoustic signal traveled based on said relationship between said timedelay and temperature for said acoustic signal over said third distance.6. A mobile electronic device comprising: a processor; at least onespeaker; a first microphone spaced a first distance from said speaker; asecond microphone spaced a second distance from said speaker, whereinsaid second distance is greater than said first distance, and wherein adifference between said first distance and said second distance is aknown third distance; and wherein said processor is configured to:operate said first microphone to capture a first sample of an acousticsignal emitted from said speaker; operate said second microphone tocapture a second sample of said acoustic signal; determine a time delayin said acoustic signal between said first sample and said secondsample; and infer an ambient temperature of the atmosphere through whichsaid acoustic signal traveled based on a relationship between said timedelay and temperature for said acoustic signal over said third distance.7. The mobile electronic device of claim 6, further comprising: a memorycoupled to said processor, said memory configured with a storedpredetermined representation of said relationship between said timedelay and said temperature for said acoustic signal over said thirddistance.
 8. The mobile electronic device of claim 6, furthercomprising: a sensor coupled with said processor and configured toprovide data to said processor, wherein said processor is configured todetermine a characteristic of said mobile electronic device from saiddata, and wherein said processor only accomplishes said inferring saidambient temperature of the atmosphere through which said acoustic signaltraveled based on said relationship between said time delay andtemperature for said acoustic signal over said third distance inresponse to said characteristic being within a predetermined envelope.9. The mobile electronic device of claim 6, further comprising: atemperature sensor, wherein a temperature reading from said temperaturesensor is used to calibrate the inferred ambient temperature.
 10. Themobile electronic device of claim 6, further comprising: a temperaturesensor, wherein said inferred ambient temperature is only inferred if areading from said temperature sensor is within a predefined range. 11.The mobile electronic device of claim 6, wherein said processor isfurther configured to perform at least one of: selecting said firstmicrophone and said second microphone from a plurality of at least threemicrophones.
 12. The mobile electronic device of claim 6, wherein saidprocessor is one of a sensor processor of a sensor processing unitdisposed in said mobile electronic device and a host processor of saidmobile electronic device.
 13. The mobile electronic device of claim 6,wherein said third distance falls in a range of distances between 0.10cm and 25 cm.
 14. The mobile electronic device of claim 6, wherein saidacoustic signal is one of: a single frequency; a plurality offrequencies; a range of frequencies; a known pattern of frequencies; anda pseudorandom noise code.
 15. The mobile electronic device of claim 6,wherein said acoustic signal is a repeating waveform with a frequencybetween 19 kHz and 50 kHz.
 16. The mobile electronic device of claim 6,wherein said acoustic signal is a repeating waveform with a frequencybetween 20 Hz and 21 kHz.
 17. The mobile electronic device of claim 6,wherein said time delay comprises one of a time-of-flight delay and aphase shift.
 18. A mobile electronic device comprising: a hostprocessor; at least one speaker; and a sensor processing unitcomprising: a first microphone spaced a first distance from saidspeaker; and a second microphone spaced a second distance from saidspeaker, wherein said second distance is greater than said firstdistance, and wherein a difference between said first distance and saidsecond distance is a known third distance; wherein said sensorprocessing unit is configured to: operate said first microphone tocapture a first sample of an acoustic signal emitted from said speaker;operate said second microphone to capture a second sample of saidacoustic signal; determine a time delay in said acoustic signal betweensaid first sample and said second sample; and infer an ambienttemperature of the atmosphere through which said acoustic signaltraveled based on a relationship between said time delay and temperaturefor said acoustic signal over said third distance.
 19. The mobileelectronic device of claim 18, further comprising: a memory coupled tosaid processor, said memory configured with a stored predeterminedrepresentation of said relationship between said time delay and saidtemperature for said acoustic signal over said third distance.
 20. Themobile electronic device of claim 18, further comprising: a displayconfigured to display said inferred ambient temperature.
 21. The mobileelectronic device of claim 18, further comprising: a sensor coupled withsaid processor and configured to provide data to said processor, whereinsaid processor is configured to determine a characteristic of saidmobile electronic device from said data, and wherein said processor onlyaccomplishes said inferring said ambient temperature of the atmospherethrough which said acoustic signal traveled based on said relationshipbetween said time delay and temperature for said acoustic signal oversaid third distance in response to said characteristic being within apredetermined envelope.
 22. The mobile electronic device of claim 18,wherein said processor is further configured to perform at least one of:selecting said first microphone and said second microphone from aplurality of at least three microphones.
 23. The mobile electronicdevice of claim 18, wherein said third distance falls in a range ofdistances between 0.10 cm and 25 cm.
 24. The mobile electronic device ofclaim 18, wherein said acoustic signal is one of: a single frequency; aplurality of frequencies; a range of frequencies; a known pattern offrequencies; and a pseudorandom noise code.
 25. The mobile electronicdevice of claim 18, wherein said acoustic signal is a repeating waveformwith a frequency between 19 kHz and 50 kHz.
 26. The mobile electronicdevice of claim 18, wherein said acoustic signal is a repeating waveformwith a frequency between 20 Hz and 21 kHz.
 27. The mobile electronicdevice of claim 18, wherein said time delay comprises one of atime-of-flight delay and a phase shift.